home *** CD-ROM | disk | FTP | other *** search
/ WINMX Assorted Textfiles / Ebooks.tar / Text - Tech - Hacking - SoftIce - How to load IDA symbols into SoftICE (TXT).zip / GIJ!EIDS.TXT next >
Text File  |  1998-06-14  |  3KB  |  73 lines

  1.  
  2.                       Importing IDA symbols Into S-ice
  3.                                   By Gij
  4.  
  5. How To do it
  6. ------------
  7.  
  8. * all lines surrounded by quotes mean commands you need to type in the
  9.   command line or in s-ice.
  10.  
  11. It's not a complex procedure, so we'll try and keep it short and sweet.
  12. After Disassembling The program in IDA, create an Output MAP file.
  13. Use the Included Perl script to convert it to the format needed by
  14. msym.exe. ( PERL for Windows can be gotten for free from www.activestate.com ).
  15. Now look at the .MAP file and note the order in which the various sections
  16. appear ( DATA,CODE,.rdata,etc'), giving each a number, starting from 1 and up.
  17. Get msym.exe from the UTIL16 sub directory of the winice directory, and run
  18. the new .MAP file through it to generate a .SYM file.
  19. get nmsym.exe from the winice directory, first translate the .SYM file
  20. to an .NMS file:
  21.  
  22. "NMSYM file.sym"
  23.  
  24. then load the new sym file into softice:
  25.  
  26. "NMSYM /SYM:file.NMS
  27.  
  28. Now, load the program into symloader, and press the load button to break at
  29. the first instruction, step one instruction to load in the page.
  30.  
  31. Now you need to use symloc to relocate the symbols to the program base.
  32. to do that use:
  33.  
  34. "TASK", to find the task name for the program.
  35.  
  36. now get the selector and base for the various sections of the Program:
  37.  
  38. "MAP32 TASKNAME", the fields you need are the one's under "obj name", and
  39.                   "address".
  40.  
  41. now you need to relocate each section of the .MAP file as using the numbers
  42. you gave them earlier to the appropriate base address of the "obj name".
  43. You should use the number of the section who's name correspond's to "obj
  44. name".
  45.  
  46. so if the FIRST section in the .MAP file is CODE, and MAP32 says that the
  47. base address for the CODE "obj name" is 137:401000, you would use the command:
  48.  
  49. "symloc 1 137 401000"
  50.         ^
  51.         |
  52.         - - This Is the number of the section you've written earlier.
  53.  
  54. for the next section you would use:
  55.  
  56. "symloc 2 <base> <addr>"
  57.  
  58. The Names should now appear in the Disassembly Window.
  59. You Can See what ssymbols are currently loaded by using the "SYM" command.
  60.  
  61. Thanks Goes to:
  62. ---------------
  63.  
  64. The_Owl: For Writing how to do this in Mammon's cracking Forum.
  65. Halvar: For Finding The post.
  66. Tin: For pointing me at Vizion,Niabi,And MP, who all didn't know or forget how.
  67.  
  68. Larry Wall: He wrote PERl, Respect.
  69.  
  70. If You Need to Reach Me, i can be found on #cracking4newbies on EFNET,
  71. or you can mail me on gij <at sign> iname.com .
  72.  
  73.